Bu yazımda jQuery, PHP ve MySQL bağlantısı kullanarak nasıl otomatik tamamlamalı text input oluştururuz bunun ile ilgili örnek kodları paylaşacağım.
Öncelikli olarak MySQL veritabanımız aşağıdaki gibi :
-Kullanicilar
–KullaniciID
–KullaniciAdi
index.html Dosyamız :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<!doctype html> <html lang="tr"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>wwPHP Otomatik Tamamlama</title> <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"> </head> <body> <div class="ui-widget"> <label for="search">Kullanıcıadı : </label> <input id="search" name="kullaniciadi" type="text" placeholder="" /> </div> </body> <script> <script src="https://code.jquery.com/jquery-1.12.4.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> $(document).ready(function () { $( "#search" ).autocomplete({ source: "search-username.php" }); }); </script> </html> |
search-username.php Dosyamız :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<?php try { $db = new PDO('mysql:host=localhost;dbname=VERITABANI;charset=utf8', 'VT_KULLANICIADI', 'VT_SIFRE'); } catch (PDOException $e ){ die($e->getMessage()); } $term = $_GET['term']; $query = $db->query('SELECT * FROM Kullanicilar WHERE KullaniciAdi LIKE "%'.$term.'%"', PDO::FETCH_ASSOC); if ( $query->rowCount() ){ $data = array(); foreach ( $query as $row ){ $data[] = $row['KullaniciAdi']; } echo json_encode($data); } ?> |